program main
    implicit none
    integer :: i
    integer :: x(-50:50,1),y(1,-100:100)
    integer(kind=8) :: z(-50:50,-100:100)
    x(:,1)=(/ (i,i=-50,50) /)
    y(1,:)=(/ (i,i=-100,100) /)
    z = matmul(x*x,y*y)
    write(*,*) z
end program
